package com.ruoyi.system.domain.sync;

import org.apache.commons.lang3.builder.ToStringBuilder;

import java.util.List;
import java.util.Map;

/**
 * @author renzhihao
 * @date 2023/12/11 14:44
 */
public class IAMSyncAccount {
    private String id;
    private Integer syncType;
    private Long eventTimestamp;
    private Long createTime;

    private String taskId;
    private String appId;
    private String principalId;
    private String status;
    private String password;
    private List<String> deptNums;
    private Map<String, Object> attributes;
    private String userId;
    private List<String> appRoles;
    private List<String> appPermissions;

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public Integer getSyncType() {
        return syncType;
    }

    public void setSyncType(Integer syncType) {
        this.syncType = syncType;
    }

    public Long getEventTimestamp() {
        return eventTimestamp;
    }

    public void setEventTimestamp(Long eventTimestamp) {
        this.eventTimestamp = eventTimestamp;
    }

    public Long getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Long createTime) {
        this.createTime = createTime;
    }

    public String getTaskId() {
        return taskId;
    }

    public void setTaskId(String taskId) {
        this.taskId = taskId;
    }

    public String getAppId() {
        return appId;
    }

    public void setAppId(String appId) {
        this.appId = appId;
    }

    public String getPrincipalId() {
        return principalId;
    }

    public void setPrincipalId(String principalId) {
        this.principalId = principalId;
    }

    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    public List<String> getDeptNums() {
        return deptNums;
    }

    public void setDeptNums(List<String> deptNums) {
        this.deptNums = deptNums;
    }

    public Map<String, Object> getAttributes() {
        return attributes;
    }

    public void setAttributes(Map<String, Object> attributes) {
        this.attributes = attributes;
    }

    public String getUserId() {
        return userId;
    }

    public void setUserId(String userId) {
        this.userId = userId;
    }

    public List<String> getAppRoles() {
        return appRoles;
    }

    public void setAppRoles(List<String> appRoles) {
        this.appRoles = appRoles;
    }

    public List<String> getAppPermissions() {
        return appPermissions;
    }

    public void setAppPermissions(List<String> appPermissions) {
        this.appPermissions = appPermissions;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this)
                .append("id", id)
                .append("syncType", syncType)
                .append("eventTimestamp", eventTimestamp)
                .append("createTime", createTime)
                .append("taskId", taskId)
                .append("appId", appId)
                .append("principalId", principalId)
                .append("status", status)
                .append("password", password)
                .append("deptNums", deptNums)
                .append("attributes", attributes)
                .append("userId", userId)
                .append("allRoles", appRoles)
                .append("appPermissions", appPermissions)
                .toString();
    }
}
